package com.snpic.appaw.module.member.service.login;

import com.snpic.appaw.module.member.controller.app.login.vo.LoginCodeRespVO;

/**
 * @author JiJun
 * @date 2025/8/26 9:18
 * @修改时间 2025/8/26 9:18
 * @description 验证码服务接口
 */

public interface VerificationCodeService {

    /**
     * 生成6位数字验证码并存储到Redis
     * 发送短信
     * @param phone 手机号（作为key）
     * @return 验证码有效期（分钟）
     */
    LoginCodeRespVO storeLoginCode(String phone);

    /**
     * 登陆用验证码,验证是否正确
     * @param phone 手机号
     * @param code  验证码
     * @return 验证结果 true-正确 false-错误
     */
    boolean verifyLoginCode(String phone, String code);
    /**
     * 生成6位数字验证码并存储到Redis,修改密码用
     * 发送短信
     * @param phone 手机号（作为key）
     * @return 验证码有效期（分钟）
     */
    LoginCodeRespVO storeUpdatePasswordCode(String phone);

    /**
     * 修改密码用验证码,验证是否正确
     * @param phone
     * @param code
     * @return 临时令牌，用于修改密码
     */
    String verifyUpdatePasswordCode(String phone, String code);
}
